package service;

import java.util.List;

import pojo.Attention;
import pojo.EssayAndUser;
import pojo.Page;
import pojo.User;

public interface UserServiceI {

	//用户登录
	public User Login(String username);
	
	//用户注册
	public int Register(User user);
	
	//根据ID查找用户
	public User FindUserById(Integer userId);
	
	//完善用户信息
	public int CompleteUserInformation(User user);
	
	//重置密码
	public int ResetPassword(User user);
	
	//查看所有用户/无差别
	public List<User> FindAllUser(Page page);

	//模糊查询
	public  List<User> FindUserByText(String text,Page page);

	//模糊查询/评论用/分页
	public  List<User> FindUserByUserName(String username,Page page);

	//模糊查询/评论用/分页
	public  int FindUserByUserNameCount(String username);

	//根据用户ID查询
	public List<User> FindByUserId(Integer userId);

	//根据用户Id删除用户
	public  boolean DeleteById(Integer userId);

	//查询关注我的用户/生成消息发送
	public  List<Integer> SelectAttention(Integer userId);

	//生成关注后消息
	public boolean MakeAttentionMessage(Integer userId,String username,String essayTitle,String date);

	//根据用户查询文章，别人查看你的可见文章
	public List<EssayAndUser> FindOtherUserEssayLogin(Integer userId,Page page);

    //根据用户查询文章，别人查看你的可见文章数量
    public Integer FindOtherUserEssayCountLogin(Integer userId);


    //根据用户查询文章，别人查看你的可见文章
    public List<EssayAndUser> FindOtherUserEssayLogout(Integer userId,Page page);

    //根据用户查询文章，别人查看你的可见文章数量
    public Integer FindOtherUserEssayCountLogout(Integer userId);
}
